Bounding Box는 인공지능, 특히 컴퓨터 비전에서 객체를 감지하거나 추적할 때 사용하는 개념이다. 이미지나 영상에서 특정 객체를 사각형 형태로 둘러싸는 상자를 의미하며, 객체의 위치와 크기를 정의하는 데 사용된다.
(1) Bounding Box란?
Bounding Box는 컴퓨터 비전에서 객체 검출 및 인식에 사용되는 사각형 프레임으로, 이미지 내 객체의 위치와 크기를 정의하는 데 사용된다.
(2) Bounding Box의 역할
객체 검출(Object Detection) 및 분류(Classification)에서 필수적인 요소
자동차, 얼굴 인식, 의료 영상 분석 등 다양한 분야에서 활용
(3) Bounding Box를 활용한 객체 검출 알고리즘
객체 검출 알고리즘은 이미지에서 Bounding Box를 찾아 객체를 식별한다. 대표적인 알고리즘으로는 다음과 같은 방법이 있다.
YOLO (You Only Look Once) 이미지를 한 번만 보고 객체의 위치(Bounding Box)와 클래스를 동시에 예측하는 방식이다. 처리 속도가 매우 빠른 대신, 정밀한 모델에 비해 정확도는 다소 낮은 편으로 알려져 있어 정확도보다 처리 속도에 강점을 갖는 모델이다.
R-CNN (Region-based CNN) 먼저 선택적 탐색(Selective Search) 알고리즘으로 이미지에서 객체가 있을 만한 후보 영역(약 2,000개)을 추출한 뒤, 각 후보 영역마다 개별적으로 CNN 연산을 수행하여 객체 탐지와 분류를 진행한다. 후보 영역마다 별도로 CNN을 거쳐야 하므로 연산량이 매우 많고 속도가 느려 효율성이 낮은 모델로 알려져 있다.
Fast R-CNN R-CNN과 마찬가지로 선택적 탐색 알고리즘으로 후보 영역을 제안하지만, 후보 영역마다 CNN을 반복 수행하지 않고 전체 이미지에 대해 CNN 연산을 한 번만 수행한 뒤 그 특성 맵에서 후보 영역을 추출한다. 이 덕분에 R-CNN보다 속도가 크게 개선되었다.
SSD (Single Shot MultiBox Detector) YOLO와 같이 이미지를 한 번만 살펴보는(Single Shot) 방식이지만, 여러 크기의 특성 맵에서 다양한 크기의 객체를 동시에 예측하는 구조를 사용한다. YOLO 계열의 발전형으로, 정확도와 처리 속도 면에서 YOLO보다 개선된 모델로 알려져 있다.
📌 객체 검출 알고리즘 비교 요약
알고리즘
후보 영역 제안
CNN 연산 방식
특징
YOLO
-
이미지를 한 번만 보고 위치·클래스 동시 예측
속도 매우 빠름, 정확도는 다소 낮음
R-CNN
선택적 탐색 (약 2,000개)
후보 영역마다 CNN 개별 수행
연산량 많고 속도 느림 (효율성 낮음)
Fast R-CNN
선택적 탐색
전체 이미지에 CNN 한 번만 수행
R-CNN보다 속도 개선
SSD
-
여러 크기의 특성 맵에서 동시 예측
YOLO 계열 발전형, 정확도·속도 개선
(4) Bounding Box 좌표
Bounding Box는 일반적으로 좌표 (x1, y1)부터 (x2, y2)까지의 값으로 정의된다.
(x1, y1): 왼쪽 상단 모서리
(x2, y2): 오른쪽 하단 모서리
(5) Bounding Box와 Anchor Box
Bounding Box와 다양한 크기와 비율을 가지는 Anchor Box는 객체 검출 모델에서 중요한 역할을 한다.